﻿using System;
using System.Data;

namespace RAD.LightOne
{
#if DEBUG
    public interface ILazy
#else
    internal interface ILazy
#endif
    {
        event TransactionHandler Loaded;
        event TransactionHandler Loading;

        Type Type { get; }
        MyObject Value { get;}
        Guid Id { get;}
        IDbTransaction Trx { get; set; }

        void Set(Guid id);
        void Set(MyObject value);
        void Load();
        //void Load(IDbTransaction trx);
    }
}
